package com.ruoyi.system.mapper;

import java.util.List;
import com.ruoyi.system.domain.SjExecutionHistory;
import com.ruoyi.system.domain.vo.SjExecutionHistoryVO;
import com.ruoyi.system.domain.vo.SjHistoryDoubtDistributionVO;

/**
 * 历史记录Mapper接口
 * 
 * @author zrr
 * @date 2024-11-06
 */
public interface SjExecutionHistoryMapper 
{
    /**
     * 查询历史记录
     * 
     * @param id 历史记录主键
     * @return 历史记录
     */
    public SjExecutionHistory selectSjExecutionHistoryById(Integer id);

    /**
     * 查询历史记录列表
     * 
     * @param sjExecutionHistory 历史记录
     * @return 历史记录集合
     */
    public List<SjExecutionHistory> selectSjExecutionHistoryList(SjExecutionHistory sjExecutionHistory);

    /**
     * 新增历史记录
     * 
     * @param sjExecutionHistory 历史记录
     * @return 结果
     */
    public int insertSjExecutionHistory(SjExecutionHistory sjExecutionHistory);

    /**
     * 修改历史记录
     * 
     * @param sjExecutionHistory 历史记录
     * @return 结果
     */
    public int updateSjExecutionHistory(SjExecutionHistory sjExecutionHistory);

    /**
     * 删除历史记录
     * 
     * @param id 历史记录主键
     * @return 结果
     */
    public int deleteSjExecutionHistoryById(Integer id);

    /**
     * 批量删除历史记录
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSjExecutionHistoryByIds(Integer[] ids);

    /**
     * 查询执行成功数量
     * @return
     */
    Integer selectSuccessHistoryCount();

    /**
     * 查询执行失败数量
     * @return
     */
    Integer selectFailsHistoryCount();

    /**
     * 查询执行数量
     * @return
     */
    Integer selectHistoryCount();


    /**
     * 查询下发工单数
     * @return
     */
    List<SjHistoryDoubtDistributionVO> selectOrderCount();
}
